Collaborative Virtual Coaching

ABSTRACT

Methods, systems, and computer-readable media provide opportunities for non-participants of an event to participate in the event as virtual event participants. According to various embodiments, virtual event participants are provided with available actions for the actual event participants that may be chosen by the virtual event participants. The results are analyzed and an action is selected and presented to an actual event participant or directly implemented. Success data corresponding to the selections of the virtual event participants is tracked and may be used during subsequent participation opportunities to select virtual event participants and to weigh selections by the virtual event participants.

BACKGROUND

This application relates generally to the field of communications and control. More specifically, the disclosure provided herein relates to providing event control opportunities to non-participants of the event.

Many entertainment and other events are configured to include participants and non-participants. The participants, either individually or as teams, perform any number and types of actions in furtherance of the event, while the non-participants are limited to observation and commentary. For example, most sporting events include players, one or more coaches, and observers. The players play the sport with input from the coaches, while the observers sit and watch or listen to the action in person or from a remote location. The observers, with or without adequate skills or knowledge of the game, often have strong opinions as to how the game should proceed given the current circumstances. However, unless the observer is a member of an organization participating in the event, the observer is prevented from participating and restricted to watching or listening to the event.

SUMMARY

It should be appreciated that this Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.

Methods, systems, and computer-readable media are provided herein for providing opportunities for non-participants of an event to participate as virtual event participants. According to embodiments described herein, a number of virtual event participants submit action votes corresponding to the actions that they would like for the actual event participants to perform. The action votes are selected from a group of available actions presented to them. From the group of action votes submitted by the virtual event participants, an action is selected. One or more actual event participants are then induced to perform the action.

After the action has been executed, the success of the action is determined and used to determine a rating for each of the virtual event participants. A second group of action votes is received from the virtual event participants and a second action for the actual event participants is then selected. In selecting the action, the action votes and the ratings associated with each virtual event participant are analyzed. After selecting the action, at least one actual event participant is induced to execute the selected action.

Other apparatus, systems, methods, and/or computer program products according to embodiments will be or become apparent to one with skill in the art upon review of the following drawings and Detailed Description. It is intended that all such additional apparatus, systems, methods, and/or computer program products be included within this description, be within the scope of the present invention, and be protected by the accompanying claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing elements of a virtual coaching system according to various embodiments presented herein;

FIG. 2 is a flow diagram illustrating a method for providing opportunities for non-participants of an event to participate in the event as virtual coaches according to various embodiments presented herein;

FIG. 3 is a flow diagram illustrating a method for identifying virtual coaching opportunities according to various embodiments presented herein;

FIG. 4 is a flow diagram illustrating a method for identifying virtual coaches according to various embodiments presented herein; and

FIG. 5 is a computer architecture diagram showing a computer architecture suitable for implementing the various computer systems described herein.

DETAILED DESCRIPTION

The following detailed description is directed to methods, systems, and computer-readable media for providing opportunities for non-participants of an event to participate in the event as virtual coaches. While the subject matter described herein is presented in the general context of program modules that execute in conjunction with the execution of an operating system and application programs on a computer system, those skilled in the art will recognize that other implementations may be performed in combination with other types of program modules.

Generally, program modules include routines, programs, components, data structures, and other types of structures that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that the subject matter described herein may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and the like.

The subject matter described herein may be practiced in a distributed computing environment where tasks are performed by remote processing devices that are linked through a communications network and wherein program modules may be located in both local and remote memory storage devices. It should be appreciated, however, that the implementations described herein may also be utilized in conjunction with stand-alone computer systems and other types of computing devices.

As discussed briefly above, most people associated with an event may be classified as either a participant or a non-participant, or observer. Examples include sporting events where fans watch players and coaches participate in the game, concerts and musical venues where audiences watch performances, game shows where audiences watch contestants play the game, and even business and government meetings where employees and citizens watch leaders shape policy and procedure. In each of these scenarios and others, the non-participants may be watching or listening to the event at the venue in which the event is taking place, or at home or other remote location via television or other video or audio source.

Embodiments of the disclosure described herein allow for the traditional non-participants to participate in the event in some limited and collaborative manner. Throughout this disclosure, embodiments will be described in the context of a football game or other sporting event. However, it should be appreciated that the embodiments described herein are equally applicable to any situation in which it may be desirable for observers of an event to be able to provide actionable input to induce the participants of the event to take some type of action. Throughout this disclosure, the persons traditionally limited to observing the event that, when utilizing the embodiments described herein, are able to provide actionable input to induce participants of the event to perform an action are referred to as virtual coaches or virtual event participants. These virtual event participants may be considered secondary coaches, while a decision-making participant at the event, such as a traditional coach of a sports team, may be considered the primary coach. Also throughout this disclosure, an “event” may be any gathering of participants in which the participants are performing actions. As mentioned above, events include but are not limited to, sporting events, concerts, game shows, conferences, business meetings, government meetings, and any other gatherings for the purpose of entertainment, transacting business, or providing instructions or education.

In the following detailed description, references are made to the accompanying drawings that form a part hereof, and which are shown by way of illustration specific embodiments or examples. Referring now to the drawings, in which like numerals represent like elements through the several figures, aspects of a virtual coaching system will be described. FIG. 1 shows various elements of a virtual coaching system 100 according to embodiments described herein. The virtual coaching system 100 includes virtual coaches 102, input devices 104, a virtual coach server 106, a virtual coach database 110, an event terminal 120, a primary coach 122, an event venue 124, and actual event participants 126.

The virtual coaches 102 may include any number of virtual coaches 102A-102N. As will be described in detail below, the virtual coaches 102 utilize the input devices 104 to transmit suggested actions to an event terminal 120 utilized by the primary coach 122 and/or the actual event participants 126 participating in the event at the event venue 124. The input devices 104 may include any device capable of receiving input from the virtual coach 102 and transmitting the input via wireless or wired means to the event terminal 120 via a network 128. FIG. 1 illustrates various input devices 104A-104N. The input devices 104A, 104B, 104C, and 104N are shown to be a cellular telephone, a television, a push-button input device at the event venue, and a computer, respectively.

It should be appreciated that any number and type of input devices may be utilized. Other examples of input devices 104 not shown in FIG. 1 include, but are not limited to, wired and wireless telephones, remote control input devices, game controllers and consoles, and any other devices capable of receiving mechanical, electrical, and/or audio input from a virtual coach 102 and transmitting associated input over the network 128. According to various embodiments, the virtual coaches 102 may be watching or listening to the event from a remote location or from the event venue 124. For example, the virtual coaches 102A, 102B, and 102N may be monitoring the event from home or other remote location while the virtual coach 102C may be watching the event live from the event venue 124.

According to the virtual coaching system 100 shown in FIG. 1, the virtual coaches 102 are able to provide suggested actions for the actual event participants 126 via the virtual coach server 106 connected to the network 128. A virtual coach engine 108 resides on the virtual coach server 106 and includes software and/or hardware that is operative to process and communicate virtual coach identities, opportunities, and suggested participant actions between the virtual coaches 102 and the primary coach 122 and/or actual event participants 126 in the various manners described below. While the virtual coach engine 108 is shown to be executing on the virtual coach server 106, the virtual coach engine 108 may alternatively execute on the event terminal 120 and/or in combination with corresponding virtual coach applications executing on the input devices 104.

The virtual coach server 106 is communicatively linked to the virtual coach database 110 via a direct or remote connection. The virtual coach database 110 is used to store event rules 112, event data 114, virtual coach profiles 116, and virtual coach ratings 118. Alternatively, the event rules 112, event data 114, virtual coach profiles 116, and virtual coach ratings 118 may be stored within memory or other mass storage device located within or locally or remotely connected to the virtual coach server 106. According to various embodiments, the event rules 112 provide the virtual coach engine 108 with instructions corresponding to the selection of virtual coaches 102 for participation in an event, for the selection and publication of virtual coaching opportunities, and for the selection of suggested actions for presentation to the primary coach 122 and/or actual event participants 126. Details as to the use of the event rules 112 by the virtual coach engine 108 will be provided below with respect to FIGS. 2-4.

According to various embodiments described herein, the event data 114 may include any type and quantity of information about a targeted event taking place at the event venue 124 that can used by the virtual coach engine 108 to select the appropriate event rules 112 or otherwise operate in the various manners disclosed herein. As an example, the event data 114 may define the event as a football game between team X and team Y, with team X having the corresponding primary coach 122. By utilizing this event data 114 that identifies the parameters of the event, the virtual coach engine 108 is able to select the appropriate event rules 112 used to identify the appropriate virtual coaches 102, to identify the corresponding virtual coaching opportunities, and to create and update virtual coach ratings 118 corresponding to the virtual coaches 102, as described in greater detail below. The suggested actions, or action votes, submitted by the virtual coaches 102 may also be stored by the virtual coach engine 108 as event data 114 to be utilized in selecting an action for the actual event participants 126 and updating virtual coach ratings 118.

The virtual coach profiles 116 contain information corresponding to the virtual coaches 102. According to one embodiment, in order to participate in an event as a virtual coach 102, each virtual coach must subscribe to the virtual coaching system 100. Various subscription levels may be utilized to allow for varying types and quantities of authorized participation according to corresponding price points or other tangible or intangible benefits. The subscription information corresponding to each virtual coach 102 may be stored within the virtual coach profiles 116 in the virtual coach database 110. As an example of the various subscription levels, a basic subscription may allow a virtual coach 102 to provide a “vote” or similar input to the primary coach 122 corresponding to an overall strategy that should be utilized such as “aggressive” or “conservative” play calling. The primary coach 122 may optionally utilize the input from one or more virtual coaches 102 participating under the basic subscription.

In contrast, a premium subscription may allow a virtual coach 102 to provide input corresponding to a specific play selection to be implemented in real time at that moment in the game. When the primary coach 122 receives input from one or more virtual coaches 102 participating under the premium subscription, the primary coach 122 may be required to implement the suggested action selected by the majority of the virtual coaches 102 participating under the premium subscription. Various embodiments may require a virtual coach 102 to log in to the virtual coaching system 100. It should be appreciated that a subscription or access to the virtual coaching system 100 may be associated with a particular user or a particular input device 104. For example, a subscriber may wish to be the exclusive user under a single subscription to ensure accurate tracking of statistics for that user during the event or season of events. Alternatively, a particular input device 104 or group of input devices 104 may share a subscription so that data and statistics are kept for the device or group of devices rather than a single user. For example, a family may share a subscription that tracks data and statistics for all input from a television so that members of the family may individually or collectively participate as virtual coaches using a single device. Similarly, a sports bar may have one or more subscriptions so that virtual coach data and statistics are kept for the location rather than the specific users. As will become apparent from the embodiments described below, the virtual coaching system 100 may allow for suggested actions from the virtual coaches 102 to be implemented by the primary coach 122 and/or the actual event participants 126 in any number of ways according to the event rules 112, virtual coaching subscriptions, and virtual coach ratings 118.

The virtual coach ratings 118 are indicators corresponding to the historical success of the virtual coaches 102. Virtual coach ratings 118 are created by the virtual coach engine 108 once the virtual coach 102 has submitted his or her first suggested action for the actual event participants 126. As will be described below, after the actual event participants 126 perform an action that was influenced by one or more virtual coaches 102, then the virtual coach ratings 118 corresponding to the participating virtual coaches 102 are updated and utilized by the virtual coach engine 108 and/or the primary coach 122 in selecting a subsequent action for the actual event participants 126.

According to one embodiment of the disclosure presented herein, each virtual coach 102 will have an assigned virtual coach rating 118. The virtual coach rating 118 may be a number that corresponds to a numerical rating scale that is similar to grading scales used by many teachers. For example, a virtual coach rating 118 equal to a “95” on a 100 point scale may indicate a higher rating than a virtual coach rating 118 equal to a “67.” Therefore, the virtual coach 102A with a “95” virtual coach rating 118 has been more successful than the virtual coach 102B having a “67” virtual coach rating 118.

It should be appreciated that any type of rating system may be utilized within the scope of the present disclosure to rate the virtual coaches 102. For example, the virtual coach ratings 118 may be as simple as a “thumbs up” indicator representing success with recent suggested actions or a “thumbs down” indicator representing a lack of recent success. The virtual coach ratings 118 may alternatively be based on a star system that assigns five stars to the most successful virtual coaches 102 and zero stars to the least successful virtual coaches 102.

The virtual coach ratings 118 may indicate the success of each virtual coach 102 without regard to other virtual coaches 102. Alternatively, the virtual coach ratings 118 may indicate the success of each virtual coach 102 as compared to the other participating virtual coaches 102, such as a ranking system. In this embodiment in which the virtual coaches 102 are ranked with respect to one another, the virtual coach engine 108 may utilize an algorithm and any amount of corresponding criteria to create the virtual coach ratings 118, or rankings. For example, assume that each action suggested by a virtual coach 102 is similar to a vote. The virtual coach engine 108 may give the vote from virtual coach 102A more weight than the vote from the virtual coach 102B if the virtual coach 102A has a greater number of past successful votes, a greater percentage of past successful votes, a higher participation frequency, a targeted geographic location, and/or any combination thereof as compared to the same criteria with respect to the virtual coach 102B. It should be recognized that any criteria may be used for determining how to select an action or series of actions for the actual event participants 126 from the suggested actions submitted by the virtual coaches 102. Further examples will be discussed below.

It should be understood that the various elements of the virtual coaching system 100 may communicate with one another via a network 128. The network 128 may include a wireless network such as, but not limited to, a Wireless Local Area Network (WLAN) such as a WI-FI network, a Wireless Wide Area Network (WWAN), a Wireless Personal Area Network (WPAN) such as BLUETOOTH, a Wireless Metropolitan Area Network (WMAN) such a WiMAX network, a cellular network, or a satellite network. The network 128 may also be a wired network such as, but not limited to, a wired Wide Area Network (WAN), a wired Local Area Network (LAN) such as the Ethernet, a wired Personal Area Network (PAN), or a wired Metropolitan Area Network (MAN). The network 128 may also include the Internet such that the network communications occur via wireless or wired connections to the Internet.

Turning now to FIG. 2, an illustrative routine 200 will be described for providing opportunities for non-participants of an event to participate in the event as virtual coaches 102 according to various embodiments presented herein. The routine 200 will be described with respect to the virtual coaching system 100 shown in FIG. 1. It should be appreciated that the logical operations described herein are implemented (1) as a sequence of computer implemented acts or program modules running on the virtual coach server 106 and/or (2) as interconnected machine logic circuits or circuit modules within the virtual coach server 106. The implementation is a matter of choice dependent on the performance requirements of the computing system. Accordingly, the logical operations described herein are referred to variously as operations, structural devices, acts, or modules. These operations, structural devices, acts and modules may be implemented in software, in firmware, in special purpose digital logic, and any combination.

The routine 200 begins at operation 202, where the virtual coach engine 108 identifies the event. As discussed above, events may include but are not limited to, sporting events, concerts, game shows, conferences, business meetings, government meetings, and any other gatherings for the purpose of entertainment, transacting business, or providing instructions or education. The type of event may drive the various virtual coaching opportunities that will be allowed during the event. For example, a set of event rules 112 may correspond to a sporting event, while a different set of event rules 112 may correspond to a concert. Even within a particular category of event, the identification of a specific event within that category may introduce specific virtual coaching opportunities. For example, a football game having Coach Smith as the coach of the home team may trigger the virtual coach engine 108 to retrieve a particular set of event rules 112 that are designed specifically to allow certain virtual coaching opportunities according to Coach Smith's desires.

The identity of the event may be input by the primary coach 122 or by a virtual coach service provider. The virtual coach service provider may be any business entity providing one or more elements of the virtual coaching system 100. The event identity may be selected from a list of events stored in the virtual coach database 110 or may be created by the primary coach 122 or virtual coach service provider via a user interface provided by the virtual coach engine 108.

From operation 202, the routine 200 continues to operation 204, where the virtual coach engine 108 receives any applicable event rules 112. These event rules 112 may be stored in the virtual coach database 110 or input by the primary coach 122 or virtual coach service provider via a user interface provided by the virtual coach engine 108. As described above, the event rules 112 that are received by the virtual coach engine 108 may depend upon the event identified at operation 202. Upon receipt of the identity of the event, the virtual coach engine 108 may search the virtual coach database 110 for the corresponding event rules 112, prompt the primary coach 122 or virtual coach service provider to input customized event rules 112, or retrieve a set of default event rules 112.

From operation 204, the routine 200 continues to operation 206, where the virtual coach engine 108 identifies virtual coaching opportunities. Virtual coaching opportunities are instances within the event in which participating virtual coaches 102 may submit suggested actions to the primary coach 122 and/or the actual event participants 126. Virtual coaching opportunities also include the available selection options corresponding to the actions that may be suggested by the virtual coaches 102. As an example using a football game as the event, the virtual coaching opportunities may include a number of play selections available at a particular time in the game. For example, the virtual coaches 102 may be able to select a play from the entire playbook associated with a team or from a subset of plays chosen by the primary coach 122 of the team or by the virtual coach engine 108 according to the applicable event rules 112. It should be appreciated that the virtual coaching opportunities may be provided to the virtual coaches 102 without presenting the virtual coaches 102 with available selection options. In this embodiment, the virtual coaches 102 may input any desired action without choosing from a group of available options. The input may correspond to actions that may be recognized by the virtual coach engine 108, or may be actions that must be interpreted by the virtual coach engine 108 according to stored logic that parses and evaluates the input from the virtual coaches 102 to arrive at a suggested action.

The play selections may be available to the virtual coaches 102 before each play of the game or only prior to one or more selected times during the game. For example, the virtual coaches 102 may be presented with available plays prior to every play of the game. After each virtual coach 102 has selected a play, the virtual coach engine 108 selects the play to execute according to the number of “votes” by the virtual coaches 102 for each available play selection, taking into account the virtual coach ratings 118 associated with the virtual coaches 102, the subscription levels associated with the virtual coaches 102, any requirements or restrictions in the applicable event rules 112, or any combination thereof. According to various embodiments, the virtual coaches 102 have a limited time in which to submit suggested actions, or action votes. At the end of the predetermined time limit, the virtual coach engine 108 may cut off all subsequent input and analyze the received input. If the quantity of action votes received does not exceed a threshold number, the virtual coach engine 108 may provide no input to the primary coach 122 or may notify the primary coach 122 of the limited number of votes. The primary coach 122 may then have an option whether or not to view the results or use the results of the received action votes for the given virtual coaching opportunity.

As mentioned briefly above, the virtual coaching opportunities are not limited to providing the virtual coaches 102 with a selection of plays to choose from. The virtual coaching opportunities may be broader and more strategic in nature. For example, one embodiment provides the virtual coaches 102 with one or more opportunities during the game to instruct the primary coach 122 to be aggressive or conservative in his or her play calling. An example would be during a fourth down play in the football game. The virtual coach engine 108 provides the virtual coaches 102 with a choice between “go for it” or “punt.” The primary coach 122 may take the voting results from the virtual coaches 102 into consideration in deciding which tactic to take, or may be contractually obligated to choose a tactic corresponding to the voting results. Similarly, the virtual coach engine 108 may provide the virtual coaches 102 with a choice between “aggressive” and “conservative” at some instance before or during the game. From that point forward, the primary coach 122 utilizes the results of the aggressive/conservative decision from the virtual coaches 102 to determine a course of action whenever key decisions must be made.

It should be appreciated that virtual coaching opportunities may be established before the event commences, during the event, or a combination thereof. As will be described with respect to FIG. 3, the virtual coaching opportunities may be defined in the event rules 112, by the virtual coach service provider, and/or by the primary coach 122. Turning now to FIG. 3, operation 206 will be described as a routine 300 for identifying virtual coaching opportunities according to various embodiments. The routine 300 begins at operation 302, where the virtual coach engine 108 determines whether virtual coaching opportunities are identified in the event rules 112. As described above, the event rules 112 may be pre-established by the virtual coach service provider or the primary coach 122 prior to the event.

If the virtual coach engine 108 determines that the virtual coaching opportunities are not identified in the event rules 112, then the routine 300 proceeds to operation 306 and continues as described below. However, if the virtual coach engine 108 determines that the virtual coaching opportunities are identified in the event rules 112, then the routine 300 continues to operation 304, where the virtual coach engine 108 identifies the virtual coaching opportunities according to the event rules 112. From operation 304, the routine 300 continues to operation 306, where the virtual coach engine 108 determines whether a real-time identification of a virtual coaching opportunity has been received from the virtual coach service provider or the primary coach 122.

According to embodiments presented herein, the primary coach 122 may initiate an opportunity for the virtual coaches 102 to provide input at any instance during the game or event. For example, if the primary coach 122 faces a situation requiring a difficult decision to be made as to the selection of the next play, the primary coach 122 may request input from one or more virtual coaches 102 via the event terminal 120. Similarly, the virtual coach service provider may initiate a request for input from one or more virtual coaches 102. Returning to operation 306, if the virtual coach engine 108 determines that a real-time identification of a virtual coaching opportunity has not been received, then the routine 300 proceeds to operation 310 and continues as described below. However, if the virtual coach engine 108 determines at operation 306 that a real-time identification of a virtual coaching opportunity has been received, then the routine 300 continues to operation 308, where the virtual coach engine 108 identifies the received virtual coaching opportunity.

The routine 300 continues from operation 308 to operation 310, where the virtual coach engine 108 determines whether any virtual coaching opportunities have been identified in the event rules 112 or real-time by the virtual coach service provider or primary coach 122. If the virtual coach engine 108 determines that no virtual coaching opportunities have yet been identified, then according to one embodiment, the routine 300 proceeds to operation 312, where the virtual coach engine 108 retrieves a set of default virtual coaching opportunities stored in the virtual coach database 110 or other memory. The default virtual coaching opportunities may be based on the type of event. As an example, default virtual coaching opportunities corresponding to a football game may include options for “run,” “pass,” “go for it,” and “kick” that are continuously presented to the virtual coaches 102. In this embodiment, the virtual coach engine 108 may accept suggested actions from the virtual coaches 102 at any point in the game and aggregate the input for use by the primary coach 122. From operation 312, the routine 300 ends.

If at operation 310, the virtual coach engine 108 determines that virtual coaching opportunities have been identified from one or more sources, then the routine 300 continues to operation 314, where the virtual coach engine 108 reconciles the virtual coaching opportunities for presentation to the virtual coaches 102. There may be event rules 112 that identify specific virtual coaching opportunities. There may also be virtual coaching opportunities identified by the virtual coach service provider and/or the primary coach 122. The virtual coach engine 108 determines if all of these virtual coaching opportunities are consistent with one another, or if there are conflicts that must be addressed. For example, the event rules 112 may state that only a particular subset of virtual coaches 102 may provide input in certain circumstances. However, the primary coach 122 may choose to override the event rules 112 and request input from another subset of virtual coaches 102 or from all of the virtual coaches 102. In these instances having conflicting virtual coaching opportunities identified, the virtual coach engine 108 selects the virtual coaching opportunities from preprogrammed logic that includes prioritization rules. From operation 314, the routine 300 ends and returns to the routine 200.

Returning to FIG. 2, the routine 200 continues from operation 206 to operation 208, where the virtual coach engine 108 identifies the virtual coaches 102 to participate in the event by submitting suggested actions for the actual event participants 126. As discussed above, the virtual coaches 102 allowed to participate during any given virtual coaching opportunity may include all persons who watching the event live or at a remote location, or a subset of those persons according to any number of criteria. As an example, the virtual coaches may include specific subscribers depending on their subscription levels and the particular virtual coaching opportunity, may include persons from a particular geographic location, may include persons according to the quantity of past participation in the virtual coaching system 100, may include persons according to selected demographic criteria, or any combination thereof.

According to another embodiment, a predetermined number of virtual coaches 102 may be selected at random from the entire available pool of virtual coaches 102. Yet another embodiment includes selecting a single virtual coach 102 based on any type of selection criteria to provide the suggested action for each particular virtual coaching opportunity. According to further embodiments, each virtual coach 102 selected to participate in a virtual coaching opportunity must possess a minimum threshold virtual coach rating 118 corresponding to the virtual coach's historical success.

Turning now to FIG. 4, operation 208 will be described as a routine 400 for identifying virtual coaches 102 according to various embodiments. The routine 400 begins at operation 402, where the virtual coach engine 108 determines whether the virtual coaches 102 are identified in the event rules 112. It should be appreciated that the event rules 112 corresponding to a particular event may define who is allowed to participate as a virtual coach 102. If the applicable event rules 112 are silent as to the identities of the virtual coaches 102, then the routine 400 proceeds to operation 406 and continues as described below. However, if the virtual coach engine 108 is capable of identifying the virtual coaches 102 utilizing the applicable event rules 112, then the routine 400 continues to operation 404, where the virtual coaches 102 are identified.

From operation 404, the routine 400 continues to operation 406, where the virtual coach engine 108 determines whether the virtual coaches 102 are identified by the virtual coach service provider and/or the primary coach 122. According to various embodiments, either of these entities may identify the virtual coaches 102 prior to the start of the event or anytime during the event. As discussed above, the primary coach 122 may determine at a key instance during the game that he or she would like the collaborative opinion of all of the virtual coaches 102 that have participated in at least 90% of the available virtual coaching opportunities with a virtual coach rating corresponding to a 90% or better success rate.

If the virtual coach engine 108 determines that the virtual coaches 102 have not been identified by the virtual coach service provider and/or the primary coach 122, then the routine 400 proceeds from operation 406 to operation 410 and continues as described below. However, if the virtual coach engine 108 determines that the virtual coaches 102 have been identified by the virtual coach service provider and/or the primary coach 122, then the routine 400 proceeds from operation 406 to operation 408, where the virtual coach engine 108 identifies the virtual coaches 102 corresponding to the directions from the virtual coach service provider and/or the primary coach 122.

From operation 408, the routine 400 continues to operation 410, where the virtual coach engine 108 determines whether the virtual coaches are to be identified according to subscriptions. As discussed above, embodiments of the disclosure provided herein allow for aspiring virtual coaches 102 to pay for subscriptions to the virtual coaching system 100 according to the level of participation that he/she desires. The event rules 112 for any given event may define the allowed participation with respect to various subscription levels. For example, the event rules 112 for a particular event may allow participation of virtual coaches 102 only for those virtual coaches 102 subscribing to the premium virtual coach service. If the virtual coach engine 108 determines that virtual coaches 102 are not identified according to subscriptions, the routine 400 proceeds to operation 414 and continues as described below. However, if at operation 410, the virtual coach engine 108 determines that virtual coaches 102 are identified according to subscriptions, the routine 400 proceeds to operation 412, where the virtual coaches 102 are selected according to the applicable subscription requirements.

From operation 412, the routine 400 continues to operation 414, where the virtual coach engine 108 determines whether virtual coaches 414 are to be selected according to corresponding virtual coach ratings 118. This determination may be made via reference to the event rules 112 or input from the virtual coach service provider or the primary coach 122. As previously described, embodiments provide for the selection of virtual coaches 102 to participate based on the historical success of each virtual coach 102. The first time that a virtual coach 102 participates, he or she may not have a virtual coach rating 118. Each time that the virtual coach 102 provides input to the virtual coaching system 100 in the form of a suggested action for the actual event participants 126, the success of that input will be evaluated and the corresponding virtual coach rating 118 updated. The success determination will be described in further detail below.

If the virtual coach engine 108 determines that virtual coaches 102 are not to be selected according to the virtual coach ratings 118, then the routine 400 proceeds to operation 418 and continues as described below. However, if at operation 414, the virtual coach engine 108 determines that virtual coaches 102 are to be selected according to the virtual coach ratings 118, then the routine 400 proceeds to operation 416, where the virtual coach engine 108 utilizes the virtual coach ratings 118 stored in the virtual coach database 110 to identify the virtual coaches 102. From operation 416, the routine 400 continues to operation 418, where the virtual coach engine 108 reconciles the virtual coach identities according to the various identifications described above using preprogrammed logic and/or input from the virtual coach service provider or the primary coach 122. From operation 418, the routine 400 ends and returns to the routine 200.

Returning to FIG. 2, the routine 200 continues from operation 208 to operation 210, where the virtual coach engine 108 establishes the virtual coach ratings 118. According to various embodiments, once the virtual coaches 102 have been identified, each virtual coach 102 should have a corresponding virtual coach rating 118. If this is the first time that the virtual coach 102 has participated, then the virtual coach 102 will not likely have a virtual coach rating 118. In this situation, the virtual coach engine 108 may establish a virtual coach rating 118 for the virtual coach 102. The corresponding virtual coach rating 118 may be indicative of the associated virtual coach's lack of experience. Alternatively, virtual coach ratings 118 are established for new virtual coaches 102 at the time that each virtual coach 102 registers with the virtual coach service provider or subscribes to a virtual coaching service.

From operation 210, the routine 200 continues to operation 212, where the virtual coach engine 108 presents the virtual coaches 102 with one or more virtual coaching opportunities. According to one embodiment, the virtual coaches 102 are presented with a user interface on a display. For example, the virtual coaches 102B and 102N shown in FIG. 1 who are watching the event on television and computer monitor, input devices 104B and 104N, respectively, may be presented with the virtual coaching opportunity, such as a number of football plays, along a border of the television display surrounding the event. The virtual coaching opportunity may be presented in the form of text, diagram, picture, video, audio, or any combination of these or other media formats.

According to another embodiment, the virtual coach 102A may be presented with the virtual coaching opportunity on the screen of a cellular telephone, input device 104A. According to yet another embodiment, the virtual coach 102C is watching the event live at the event venue 124 and is presented with the virtual coaching opportunity via a mechanical push-button device, input device 104C, which may be used to provide input when notified at the appropriate times. It should be appreciated that these and any other methods or combination of methods for publishing the virtual coaching opportunities may be used for both remote and local virtual coaches 102.

From operation 212, the routine 200 continues to operation 214, where the virtual coach engine 108 receives and stores action votes from the virtual coaches 102. Action votes or other input may be provided by the virtual coaches 102 via any number and type of input devices 104. As mentioned above, one embodiment provides a user interface that displays the available plays or other options for selection by the virtual coach 102. The virtual coach 102 may utilize a keyboard, mouse, remote control, video game controller, voice recognition hardware and software, and/or any other type of input device 104 to make a selection and thereby suggest an action for the actual event participants 126. For example, according to one embodiment, the virtual coach 102B utilizes a motion-sensing controller, such as a NINTENDO WII video game controller, to provide input to the virtual coach engine 108 for use by the primary coach 122 and/or the actual event participants 126. The virtual coach 102B may use a throwing motion while holding the motion-sensing controller to select a pass play, a hand-off motion to select a running play, or a kicking motion to select a punt or field-goal attempt.

According to another embodiment, the virtual coaches 102 may utilize touch tones on a telephone to provide input to the virtual coaching system 100. For example, each virtual coach 102 may dial a number associated with the virtual coaching opportunity and press “1” for a pass play, “2” for a run play, “3” to attempt a field goal, “4” to punt, “5” to suggest aggressive play calling, “6” to suggest conservative play calling, or a combination thereof, such as “15” to suggest an aggressive pass play like a deep pass. Similarly, virtual coaches 102 may additionally or alternatively provide input via text messaging or instant messaging.

The input from the various virtual coaches 102 is received by the virtual coach engine 108 and may be stored in the virtual coach database 110 as event data 114. This event data 114 will be used as described below to establish or update virtual coach ratings 118 after the corresponding action has been performed by the actual event participants 126 and the success of the input from the virtual coaches 102 has been determined. According to one embodiment, the virtual coach engine 108 transmits acknowledgements to the virtual coaches to inform them that their input was received. From operation 214, the routine 200 continues to operation 216, where the virtual coach engine 108 analyzes the input from the virtual coaches 102 to determine an action or hierarchy of actions to present to the primary coach 122 or to implement. The analysis is performed according to the event rules 112 and/or according to input from the virtual coach service provider or primary coach 122.

For example, according to one embodiment, the event rules 112 and the primary coach 122 may instruct the virtual coach engine 108 to select a single suggested action for the actual event participants 126 from the collective input from the virtual coaches 102. To select the suggested action, the virtual coach engine 108 may rank the available actions according to the number of votes for each, taking into account the respective weight given to each vote corresponding to the virtual coach rating 118 assigned to the applicable virtual coach 102. As a simplistic example, assume there are two available play selections provided to 100 virtual coaches 102 by the virtual coach engine 108. If 50 virtual coaches 102 selected play A and 50 virtual coaches 102 selected play B, but the average virtual coach rating 118 of the virtual coaches 102 selecting play A was 42 out of 100 and the average virtual coach rating 118 of the virtual coaches 102 selecting play B was 78 out of 100, then the virtual coach engine 108 would select play B for presenting to the primary coach 122 or for implementing directly with the actual event participants 126. It should be understood that the virtual coach engine 108 may utilize any algorithm, simple or complex, with any number and type of virtual coach criteria to select the suggested action.

The routine 200 continues from operation 216 to operation 218, where the virtual coach engine 108 acts on the selected input. The action may take several forms. First, the virtual coach engine 108 may simply present the suggested action selected above to the primary coach 122 or actual event participants 126 for consideration or action. According to one embodiment, the primary coach 122 or actual event participants 126 may choose to implement the suggested action from the virtual coaches 102 or to ignore the suggested action. According to another embodiment, the primary coach 122 or actual event participants 126 may be contractually obligated to perform the suggested action. By requiring the primary coach 122 or actual event participants 126 to perform the suggested action, the virtual coaches 102 have an incentive to participate since collective input must be followed.

Rather than presenting the suggested action to the primary coach 122 and/or the actual event participants 126, the virtual coach engine 108 may implement the suggested action. According to one embodiment, the actual event participants 126 may be remote controlled vehicles, robots, or other entities. In this embodiment, the virtual coach engine 108 may control the actions of the actual event participants 126 during the event, and may therefore execute the suggested action automatically after analyzing the input and selecting the action. From operation 218, the routine 200 continues to operation 220, where the virtual coach engine 108 determines the success of the action, and consequently the success of the input from each of the virtual coaches 102 for subsequent use in updating the virtual coach ratings 118 accordingly.

In order to update the virtual coach ratings 118 after an action selected by the virtual coaches 102 is performed, the success of the action must be evaluated. The action may be determined to be a success, a failure, or somewhere in between. For example, the success of an action may be represented on a sliding scale, with “1” being a total success, and “10” being a total failure. Any number and type of factors may be used in determining whether the action was successful or not. According to one embodiment, the event rules 112 include criteria utilized by the virtual coach engine 108 for determining whether the action was successful. For example, the event rules 112 may state that for each down in a football game, a threshold number of yards must be gained by the offense in order for the play to be deemed a success. For first down plays, a gain of four or more yards may be defined as a success, while for third down plays, any gain less than that required for a first down is deemed a failure.

According to alternative embodiments, the success of the particular play or action may be determined by the primary coach 122, the actual event participants 126, the virtual coach service provider, the virtual coaches 102, or any combination thereof. The virtual coach engine 108 may request collaborative input from any number of entities of the virtual coaching system 100 as to the successfulness of the previous action in much the same way as the virtual coach engine 108 requested collaborative input from the virtual coaches 102 as to which action to execute. The entities determining the successfulness of the previous action may input their action evaluations via a user interface and their corresponding input devices 104.

After determining the success of the action, the virtual coach engine 108 must determine the success of each virtual coach's input corresponding to the action. Each virtual coach 102 either suggested the action that was selected and executed by the virtual coach engine 108, or suggested an action that was not selected and executed by the virtual coach engine 108. For those virtual coaches 102 that suggested the action that was selected and executed, the virtual coach engine 108 determines that their suggestions were either successful or not according to the determined success of the action. For those virtual coaches 102 that suggested a different action that was not chosen, the virtual coach engine 108 may disregard their suggestions when determining the success of the input and updating the virtual coach ratings 118. Alternatively, the virtual coach engine 108 may give some amount of credit for not suggesting an action that subsequently fails.

Returning to FIG. 2, the routine 200 continues from operation 220 to operation 222, where the virtual coach engine 108 updates the virtual coach ratings 118 for each virtual coach 102 according to the determined success or failure of the corresponding suggested action. As previously discussed, the virtual coach ratings 118 provide some quantitative measure of success for each virtual coach 102. For every action, the virtual coaches 102 that suggested the action that was chosen will enjoy an increase in their virtual coach rating 118 if the action is determined to be a success. Conversely, the virtual coach ratings 118 corresponding to the virtual coaches 102 that suggested the action that was chosen will decrease if the action is determined to be a failure. It should be appreciated that the virtual coach ratings 118 may be created upon the initiation of an event or may be cumulative, including results from any number of past events.

After the virtual coach engine 108 updates the virtual coach ratings 118 at operation 222, the routine 200 continues to operation 224, where the virtual coach engine 108 processes the results. This operation may include any amount and type of activities that might be performed by the virtual coach engine 108 with the results of the actions induced by the virtual coaches 102. For example, the virtual coach engine 108 may announce the results of the previous virtual coaching opportunity. If a single virtual coach 102 was selected to make a play selection or other coaching decision, then the identity of the virtual coach 102 and/or the results corresponding to the virtual coach 102 and associated decision may be publicly announced. Summary results may be provided to any or all of the virtual coaches 102 at any instance during or after the event. The summary may include a listing of all of the suggested actions submitted by each virtual coach 102 and the corresponding success.

It should be appreciated that any announcements may be in the form of electronic mail, messaging, public displays on a video screen at the event and/or on television at remote locations, and audio announcements, among others. Processing the results at operation 224 may also include storing the results as event data 114 in the virtual coach database 110. The virtual coach engine 108 may record every action vote or other input from every virtual coach 102 along with the corresponding results, or may record only summary information or data from selected participants. This event data 114 may be used for data mining purposes to allow the primary coach 122 to determine which virtual coaches 102 to utilize in requesting suggested actions. According to one embodiment, the virtual coach engine 108 continuously calculates and updates statistics on the success of each of the virtual coaches 102, which may be used to rank virtual coaches 102 and provide awards and other incentives during a sports season and/or at the end of the year.

From operation 224, the routine 200 continues to operation 226, where the virtual coach engine 108 determines if there are any additional virtual coaching opportunities. The additional virtual coaching opportunities may be defined by the event rules or may be received real-time from the virtual coach service provider or the primary coach 122 as described above. If the virtual coach engine 108 determines that there are additional virtual coaching opportunities, then the routine 200 returns to operation 208, where the virtual coach engine 108 identifies the virtual coaches 102 and continues as described above. It should be noted that the identities of the virtual coaches may change for each virtual coaching opportunity in an event. If the virtual coach engine 108 determines that there are no additional virtual coaching opportunities, then the routine 200 ends.

Referring now to FIG. 5, an illustrative computer architecture for the virtual coach server 106 utilized in the various embodiments presented herein will be discussed. The computer architecture shown in FIG. 5 illustrates a conventional desktop, laptop computer, or server computer. The computer architecture shown in FIG. 5 includes a central processing unit 502 (CPU), a system memory 508, including a random access memory (RAM) 514 and a read-only memory (ROM) 516, and a system bus 504 that couples the memory to the CPU 502. A basic input/output system (BIOS) containing the basic routines that help to transfer information between elements within the virtual coach server 106, such as during startup, is stored in the ROM 516. The virtual coach server 106 further includes a mass storage device 510 for storing an operating system 518, application programs, and other program modules, which will be described in greater detail below.

The mass storage device 510 is connected to the CPU 502 through a mass storage controller (not shown) connected to the bus 504. The mass storage device 510 and its associated computer-readable media provide non-volatile storage for the virtual coach server 106. Although the description of computer-readable media contained herein refers to a mass storage device, such as a hard disk or CD-ROM drive, it should be appreciated by those skilled in the art that computer-readable media can be any available media that can be accessed by the virtual coach server 106.

By way of example, and not limitation, computer-readable media may include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. For example, computer-readable media includes, but is not limited to, RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROM, digital versatile disks (DVD), HD-DVD, BLU-RAY, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the virtual coach server 106.

According to various embodiments, the virtual coach server 106 may operate in a networked environment using logical connections to remote computers through the network 128. As described above with respect to FIG. 1, the network 128 may include a wireless network such as, but not limited to, a WLAN such as a WI-FI network, a WWAN, a WPAN such as BLUETOOTH, a WMAN such a WiMAX network, a cellular network, or a satellite network. The network 128 may also be a wired network such as, but not limited to, a wired WAN, a wired LAN such as the Ethernet, a wired PAN, or a wired MAN. The network 128 may include the Internet such that the elements of the virtual coaching system 100 communicate with one another via wireless or wired connections to the Internet.

The virtual coach server 106 may connect to the network 128 through a network interface unit 506 connected to the bus 504. It should be appreciated that the network interface unit 506 may also be utilized to connect to other types of networks and remote computer systems. The virtual coach server 106 may also include an input/output controller 512 for receiving and processing input from a number of other devices, including a keyboard, mouse, or electronic stylus (not shown in FIG. 5). Similarly, an input/output controller may provide output to a display screen, a printer, or other type of output device (also not shown in FIG. 5).

As mentioned briefly above, a number of program modules and data files may be stored in the mass storage device 510 and RAM 514 of the virtual coach server 106, including the operating system 518 suitable for controlling the operation of a networked desktop or server computer, such as the WINDOWS XP or WINDOWS VISTA operating systems from MICROSOFT CORPORATION of Redmond, Wash. Other operating systems, such as the LINUX operating system or the OSX operating system from APPLE COMPUTER, INC. may be utilized. It should be appreciated that the implementations presented herein may be embodied using a desktop or laptop computer or any other computing devices or systems or combinations thereof.

The mass storage device 510 and RAM 514 may also store one or more program modules. In particular, the mass storage device 510 and the RAM 514 may store the virtual coach engine 108, the event rules 112, the event data 114, the virtual coach profiles 116, and the virtual coach ratings 118, as well as any other program modules described above with respect to FIG. 1. Based on the foregoing, it should be appreciated that apparatus, systems, methods, and computer-readable media for allowing non-participants of an event to participate in the event as virtual coaches are provided herein. Although the subject matter presented herein has been described in language specific to computer structural features, methodological acts, and computer readable media, it is to be understood that the invention defined in the appended claims is not necessarily limited to the specific features, acts, or media described herein. Rather, the specific features, acts and mediums are disclosed as example forms of implementing the claims.

The subject matter described above is provided by way of illustration only and should not be construed as limiting. Various modifications and changes may be made to the subject matter described herein without following the example embodiments and applications illustrated and described, and without departing from the true spirit and scope of the present invention, which is set forth in the following claims. 

1. A method for providing real-time directive input to an actual event participant during an event, comprising: receiving a first plurality of action votes from a plurality of virtual event participants, the first plurality of action votes each corresponding to one of a plurality of available actions; selecting a first action for the actual event participant from the first plurality of action votes; inducing the actual event participant to perform the first action; determining a success indicator corresponding to the first action; determining a plurality of ratings for the plurality of virtual event participants, the plurality of ratings corresponding to the first plurality of action votes, the first action, and the success indicator corresponding to the first action; receiving a second plurality of action votes from the plurality of virtual event participants; selecting a second action for the actual event participant from the second plurality of action votes according to the plurality of ratings; and inducing the actual event participant to perform the second action.
 2. The method of claim 1, further comprising: identifying a plurality of virtual participant opportunities for the event; identifying the plurality of virtual event participants; and presenting the plurality of available actions to each virtual event participant for each virtual participant opportunity, wherein the first plurality of action votes corresponds to a first virtual participant opportunity and the second plurality of action votes corresponds to a second virtual participant opportunity.
 3. The method of claim 2, wherein identifying the plurality of virtual participant opportunities comprises receiving the plurality of virtual participant opportunities from a primary coach of the actual event participant.
 4. The method of claim 2, wherein identifying the plurality of virtual event participants comprises determining the virtual event participants from an event rule or from a primary coach of the actual event participant.
 5. The method of claim 2, wherein identifying the plurality of virtual event participants comprises determining the virtual event participants according to subscription information.
 6. The method of claim 1, wherein determining the success indicator corresponding to the first action comprises receiving the success indicator from a primary coach of the event.
 7. A computer-readable medium having computer-executable instructions stored thereon which, when executed by a computer, cause the computer to: receive a first plurality of action votes from a plurality of virtual event participants, the first plurality of action votes each corresponding to one of a plurality of available actions; select a first action for an actual event participant from the first plurality of action votes; induce the actual event participant to perform the first action; determine a success indicator corresponding to the first action; determine a plurality of ratings for the plurality of virtual event participants, the plurality of ratings corresponding to the first plurality of action votes, the first action, and the success indicator corresponding to the first action; receive a second plurality of action votes from the plurality of virtual event participants; select a second action for the actual event participant from the second plurality of action votes according to the plurality of ratings; and induce the actual event participant to perform the second action.
 8. The computer-readable medium of claim 7, further comprising computer-executable instructions stored thereon which, when executed by a computer, cause the computer to: identify a plurality of virtual participant opportunities for an event; identify the plurality of virtual event participants; and present the plurality of available actions to each virtual event participant for each virtual participant opportunity, wherein the first plurality of action votes corresponds to a first virtual participant opportunity and the second plurality of action votes corresponds to a second virtual participant opportunity.
 9. The computer-readable medium of claim 8, wherein the plurality of virtual participant opportunities varies for different virtual event participants according to subscription information associated with each virtual event participant.
 10. The computer-readable medium of claim 8, wherein causing the computer to identify the plurality of virtual participant opportunities comprises causing the computer to determine the plurality of virtual participant opportunities from an event rule.
 11. The computer-readable medium of claim 7, wherein causing the computer to select the first action for the actual event participant from the first plurality of action votes comprises causing the computer to determine a quantity of action votes received for each available action and identifying one available action receiving a largest quantity of action selections as the first action.
 12. The computer-readable medium of claim 11, wherein causing the computer to select the second action for the actual event participant from the second plurality of action votes according to the plurality of ratings comprises causing the computer to determine a quantity of action votes received from a subset of the plurality of virtual event participants for each available action and identifying one available action receiving a largest quantity of action selections as the second action, wherein the subset of the plurality of virtual event participants comprises a plurality of virtual event participants possessing a rating superior to a threshold rating.
 13. A system for providing real-time directive input to an actual event participant during an event, comprising: a memory for storing a program containing code for providing real-time directive input to the actual event participant; and a processor functionally coupled to the memory, the processor being responsive to computer-executable instructions contained in the program and operative to: receive a first plurality of action votes from a plurality of virtual event participants, the first plurality of action votes each corresponding to one of a plurality of available actions, select a first action for the actual event participant from the first plurality of action votes, induce the actual event participant to perform the first action, determine a success indicator corresponding to the first action, determine a plurality of ratings for the plurality of virtual event participants, the plurality of ratings corresponding to the first plurality of action votes, the first action, and the success indicator corresponding to the first action, receive a second plurality of action votes from the plurality of virtual event participants, select a second action for the actual event participant from the second plurality of action votes according to the plurality of ratings, and induce the actual event participant to perform the second action.
 14. The system of claim 13, wherein the processor is further operative to: identify a plurality of virtual participant opportunities for the event; identify the plurality of virtual event participants; and present the plurality of available actions to each virtual event participant for each virtual participant opportunity, wherein the first plurality of action votes corresponds to a first virtual participant opportunity and the second plurality of action votes corresponds to a second virtual participant opportunity.
 15. The system of claim 14, wherein the processor being operative to present the plurality of available actions to each virtual event participant comprises the processor being operative to provide a user interface to each of the plurality of virtual event participants, each user interface comprising the plurality of available actions and configured to receive an action vote corresponding to a selection of an available action via an input device associated with each virtual event participant.
 16. The system of claim 15, wherein the input device comprises one of a video game controller, a remote control, and a mouse.
 17. The system of claim 13, further comprising: receiving a request from a primary coach or an actual event participant for the first plurality of action votes from the plurality of virtual event participants; in response to the request, providing the plurality of virtual event participants with the plurality of available actions.
 18. The system of claim 13, further the processor is further operative to: receive a request from a primary coach for the first plurality of action votes from a subset of the plurality of virtual event participants, wherein each virtual event participant of the subset shares a common characteristic; and identify the subset of the plurality of virtual event participants, wherein causing the computer to select the first action for the actual event participant from the first plurality of action votes comprises causing the computer to select the first action from the first plurality of action votes corresponding to the subset of the plurality of virtual event participants.
 19. The system of claim 13, wherein causing the computer to induce the actual event participant to perform the first action comprises causing the computer to present the first action to a primary coach of the actual event participant with instructions to implement the first action.
 20. The system of claim 13, wherein causing the computer to induce the actual event participant to perform the first action comprises causing the computer to provide control signals to the actual event participant to execute the first action. 